/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package merlion.common.session.stateless;

import java.util.Collection;
import javax.ejb.Local;
import merlion.common.entity.Message;
import merlion.common.entity.Staff;
import merlion.common.entity.SystemUserAccount;

/**
 *
 * @author Zhang Ying
 */
@Local
public interface InternalMessageSessionLocal {

    public Collection<SystemUserAccount> getAllSystemUserAccounts();

    public boolean sendMessage(Message newMessage,SystemUserAccount sender, SystemUserAccount[] receivers);

    public Collection<Message> getAllMySentMessage(Long staffId);

    public Staff getSenderStaff(Long accId);

    public Message getMessage(Long id);

    public boolean deleteMessage(Long id, Long staffId);

    public boolean deleteManyMessages(Message[] selectedDeletion, Long staffId);

    public Staff getUpdatedStaff(Long id);

    public Collection<Message> getAllMyReceivedMessages(Long staffId);

    public Message updateNGetReadMsg(Long id);

    public boolean replyMessage(Message repliedMsg);

    public Collection<Message> getNewRcvedUnreadMsg(Long accId);
    
}
